package com.ruoyi.back.service

import com.baomidou.mybatisplus.extension.plugins.pagination.Page
import com.baomidou.mybatisplus.extension.service.IService
import com.ruoyi.app.common.Data
import com.ruoyi.back.domain.Member
import com.ruoyi.back.domain.dto.ExperienceMemberDto
import com.ruoyi.back.domain.dto.UpdateVideoSingleMemberDto
import com.ruoyi.back.domain.v3.VideoSinglePrice
import com.ruoyi.back.domain.vo.UpdateVideoSingleMemberVo

interface MemberService : IService<Member> {

    /**
     * 根据id获取会员名称
     */
    fun getNameByMemberId(memberId: Long): String?

    /**
     * 保存会员
     */
    fun saveMember(member: Member): Data<Boolean>


    /**
     * 设置选中
     */
    fun setDefault(memberId: Long): Data<Boolean>

    /**
     * 获取充值会员的天数
     */
    fun memberDay(memberId: Long): Int?

    /**
     * 会员分页
     */
    fun memberPage(): Page<Member>

    /**
     * 批量移除会员
     */
    fun removeMember(memberIds: String): Data<Boolean>


    /**
     * 编辑体验会员
     */
    fun updateExperienceMember(experienceMemberDto: ExperienceMemberDto): Data<Boolean>


    /**
     * 编辑视频单次收费
     */
    fun updateVideoSingleMember(updateVideoSingleMemberDto: UpdateVideoSingleMemberDto): Data<Boolean>


    /**
     * 获取视频单条收费详情
     */
    fun getUpdateVideoSingleMemberDetail(memberId: Long): Data<UpdateVideoSingleMemberVo>
}